package com.smart.model.request;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.smart.common.PageQueryRequest;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author zyh
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel("临时人员入场离场请求模型")
public class ManageTempUserRegistrationRequest extends PageQueryRequest implements Serializable {
    @ApiModelProperty("项目id")
    private Long projectId;
    @ApiModelProperty("进出场临时人员姓名")
    private String userName;
    @ApiModelProperty("进出场临时人员手机")
    private String userPhone;
    @ApiModelProperty("身份证号码")
    private String idNumber;
    @ApiModelProperty("常驻地址")
    private String address;
    @ApiModelProperty("常驻详细地址")
    private String addressDetails;
    @ApiModelProperty("接待人")
    private String receiver;
    @ApiModelProperty("是否离场（0离场 1在场）")
    private Integer leaveOrNot;
    @ApiModelProperty("离场出口")
    private Long approachAddress;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("离场时间")
    private Date approachTime;
    @ApiModelProperty("入场入口")
    private Long entranceAddress;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("入场时间")
    private Date entranceTime;
    @ApiModelProperty("人员查询条件")
    private String personInfo;
    @ApiModelProperty("项目查询条件")
    private String projectInfo;
    @ApiModelProperty("省")
    private String province;
    @ApiModelProperty("市")
    private String city;
    @ApiModelProperty("区")
    private String area;

    @ApiModelProperty("判断是云监管还是云管理查询 云监管：true 云管理：false")
    private Boolean superviseOrManage = true;
    private List<Long> projectIds;
}
